package com.example.pets.model.datasource;



import androidx.lifecycle.LiveData;

import com.example.pets.model.entities.Pet;


import java.util.List;

public interface PetDataSource {

    /**
     * 根据 pid 获取单个宠物信息
     */
    LiveData<Pet> getPetById(String pid);

    /**
     * 添加一个宠物信息到 Firestore
     */
    LiveData<Boolean> addPet(Pet pet);

    /**
     * 更新整个宠物文档（覆盖写）
     */
    LiveData<Boolean> updatePet(String pid, Pet pet);

    /**
     * 删除宠物信息
     */
    LiveData<Boolean> deletePet(String pid);

    /**
     * 获取某位用户的所有宠物（无排序）
     */
    LiveData<List<Pet>> getPetsByUser(String userRef);

    /**
     * 获取某一用户的所有宠物，按最新创建时间排序（可用于“我的宠物”列表）
     */
    LiveData<List<Pet>> getPetsByUserOrdered(String userRef, boolean ascending);


}
